home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / commodore-users-of-norman / CUON_13_(11-1984).d64 / copy-all 64 (.txt) < prev    next >
Commodore BASIC  |  2019-04-13  |  2KB  |  86 lines

  1. 100 PRINT"[147] DISK COPY-ALL      JIM BUTTERFIELD"
  2. 110 A$="!JIM BUTTERFIELD!":A$=A$+A$+A$:A$=A$+A$+A$+A$+A$
  3. 120 P$=""
  4. 130 DIM L2(232),L1%(232),N$(232),T%(232),T$(4)
  5. 140 DATA XXX,SEQ,PRG,USR,REL
  6. 150 FORJ=0TO4:READT$(J):NEXTJ
  7. 160 INPUT"FROM UNIT  8[157][157][157]";F
  8. 170 GOSUB830
  9. 180 F$=D$
  10. 190 INPUT"TO UNIT  9[157][157][157]";T
  11. 200 GOSUB830
  12. 210 T$=D$
  13. 220 IFF=T ANDF$=T$THENRUN
  14. 230 N=0:CLOSE1:CLOSE15:OPEN 15,F,15:PRINT#15,"I"+F$
  15. 240 GOSUB860:IF E THEN STOP:GOTO230
  16. 250 Z=90:INPUT"PATTERN  *[157][157][157]";P$
  17. 260 P$="XXX"+LEFT$(P$+"[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]",16)
  18. 270 PRINT"HOLD DOWN 'Y' OR 'N' KEY TO SELECT"
  19. 280 PRINT"PROGRAMS TO BE COPIED..."
  20. 290 OPEN 1,F,3,"$"+F$
  21. 300 GOSUB860:IFETHENSTOP:GOTO230
  22. 310 SYS4156
  23. 320 R=255:GOTO 340
  24. 330 SYS4245
  25. 340 FORJ=16TO2STEP-1:IFASC(MID$(A$,J+3))=160THENNEXTJ
  26. 350 N$=MID$(A$,4,J)
  27. 360 T9=ASC(A$)-128:IFT9<1ORT9>4GOTO470
  28. 370 L1%=ASC(MID$(A$,22))
  29. 380 L2=ASC(MID$(A$,29))+ASC(MID$(A$,30))*256
  30. 390 PRINTMID$(A$,4,16);" ";T$(T9)
  31. 400 P=PEEK(203)ANDR
  32. 410 GETZ$:IFZ$=""ANDP<064GOTO450
  33. 420 IFZ$="Y"ORZ$="N"THENZ=ASC(Z$):R=255:GOTO450
  34. 430 IFZ$=CHR$(13)THENR=0:GOTO450
  35. 440 GOTO410
  36. 450 IFZ<80THENPRINT"[145]                     [145]":GOTO470
  37. 460 N=N+1:L2(N)=L2:N$(N)=N$:T%(N)=T9:L1%(N)=L1%
  38. 470 IFST=0ANDN<232GOTO330
  39. 480 CLOSE1:CLOSE15:PRINT" * * * * *"
  40. 485 IFN=0THENPRINT"* NO PROGRAMS *":GOTO 800
  41. 490 FORJ=1TON
  42. 500 L2=L2(J):T%=T%(J):IFL>L2GOTO670
  43. 510 IFQ=0GOTO550
  44. 520 PRINT"*** OUTPUT DISK FULL"
  45. 530 INPUT"DO YOU HAVE A NEW ONE";Z$
  46. 540 IFASC(Z$)<>89THENEND
  47. 550 CLOSE15:OPEN15,T,15:INPUT"WANT TO NEW THE OUTPUT DISK  N[157][157][157]";Z$
  48. 560 IFASC(Z$)<>89GOTO600
  49. 570 INPUT"DISK NAME,ID";X$,Y$
  50. 580 PRINT#15,"N"+T$+":"+X$+","+Y$
  51. 590 GOSUB860:IFETHENSTOP:GOTO550
  52. 600 PRINT#15,"I"+T$:OPEN1,T,0,"$"+T$+":!#$%&"
  53. 610 GOSUB860:IFETHENSTOP:GOTO550
  54. 620 GOSUB890:GOSUB890:Q=Q+1
  55. 630 GET#1,X$:IFX$<>""GOTO630
  56. 640 GOSUB890
  57. 650 L=X+Y*256:PRINT"(";L;"BLOCKS FREE )"
  58. 660 CLOSE1:CLOSE15:GOTO500
  59. 670 OPEN14,F,15:OPEN15,T,15
  60. 680 PRINTLEFT$(N$(J)+"                    ",21);
  61. 690 OPEN3,F,3,F$+":"+N$(J)+","+T$(T%)
  62. 700 INPUT#14,E,E$,E1,E2:GOSUB870:IFETHENPRINT"** ";E$;E:GOTO780
  63. 710 IFT%=4THENOPEN4,T,4,T$+":"+N$(J)+",L,"+CHR$(L1%(J)):GOTO730
  64. 720 OPEN4,T,4,T$+":"+N$(J)+","+T$(T%)+",W"
  65. 730 L=L-L2:GOSUB860:IFETHENPRINT"*** ";E$;E:GOTO780
  66. 740 IFT%=4THENSYS4462:GOTO760
  67. 750 SYS4443
  68. 760 N$(J)="":GOSUB860:IFETHENPRINT"**** ";E$;E:GOTO780
  69. 770 PRINT"[145]"
  70. 780 CLOSE4:CLOSE3:CLOSE15:CLOSE14
  71. 790 NEXTJ
  72. 800 X=FRE(0):INPUT"ANOTHER INPUT DISK READY";Z$
  73. 810 IFASC(Z$)=89GOTO230
  74. 820 END
  75. 830 D=0
  76. 850 D$=CHR$(D+48):RETURN
  77. 860 INPUT#15,E,E$,E1,E2
  78. 870 IFE=0THENE=(ST AND 191):E$="*ST*"
  79. 880 RETURN
  80. 890 GET#1,X$
  81. 900 GET#1,X$
  82. 910 GET#1,X$
  83. 920 X=ASC(X$+CHR$(0))
  84. 930 GET#1,X$:Y=ASC(X$+CHR$(0))
  85. 940 RETURN
  86.